This specification relates to automated speech recognition.
A user of a mobile device or other computer may enter text by, for example, speaking into a microphone. The mobile device records audio data from the microphone while the user is speaking and can then use an Automated Speech Recognition (ASR) engine to create a transcription of the user's utterances. The mobile device can then execute commands specified by the transcription or perform other actions based on the transcription. The ASR engine can be implemented as middleware so that the resulting transcription can be passed to user applications.